package com.zbangmall.util.common;

/**
 * 文件名及文件路径相关的操作
 */
public final class FilePathUtil {

	/**
	 * 判断是否符是合法的文件路径
	 *
	 * @param path 需要处理的文件路径
	 */
	public final static boolean legalFile(String path) {
		//下面的正则表达式有问题
		String regex = "[a-zA-Z]:(?:[/][^/:*?\"<>|.][^/:*?\"<>|]{0,254})+";
		//String regex ="^([a-zA-z]:)|(^\\.{0,2}/)|(^\\w*)\\w([^:?*\"><|]){0,250}";
		return RegUtil.isMatche(commandPath(path), regex);
	}

	/**
	 * 返回一个通用的文件路径
	 *
	 * @param file 需要处理的文件路径
	 * @return Summary windows中路径分隔符是\在linux中是/但windows也支持/方式 故全部使用/
	 */
	public final static String commandPath(String file) {
		return file.replaceAll("\\\\{1,}", "/").replaceAll("\\/{2,}", "/");
	}


}
